#ifndef COMPILER_ONLINE
#include "header.cpp"
#endif

void Test1() {
    vector<int> height = {1,8,6,2,5,4,8,3,7};
    int ret = Solution().maxArea(height);
    if (ret == 49) {
        std::cout << "Test1 ok!" << std::endl;
    } else {
        std::cout << "Test1 failed! output expected 49, actual " << ret << std::endl;
    }
}

void Test2() {
    vector<int> height = {1,1};
    int ret = Solution().maxArea(height);
    if (ret == 1) {
        std::cout << "Test2 ok!" << std::endl;
    } else {
        std::cout << "Test2 failed! output expected 1, actual " << ret << std::endl;
    }
}

void Test3() {
    vector<int> height = {4,3,2,1,4};
    int ret = Solution().maxArea(height);
    if (ret == 16) {
        std::cout << "Test3 ok!" << std::endl;
    } else {
        std::cout << "Test3 failed! output expected 16, actual " << ret << std::endl;
    }
}

void Test4() {
    vector<int> height = {1,2,1};
    int ret = Solution().maxArea(height);
    if (ret == 2) {
        std::cout << "Test4 ok!" << std::endl;
    } else {
        std::cout << "Test4 failed! output expected 2, actual " << ret << std::endl;
    }
}

void Test5() {
    vector<int> height = {1,2,4,3};
    int ret = Solution().maxArea(height);
    if (ret == 4) {
        std::cout << "Test5 ok!" << std::endl;
    } else {
        std::cout << "Test5 failed! output expected 4, actual " << ret << std::endl;
    }
}

int main() {
    Test1();
    Test2();
    Test3();
    Test4();
    Test5();
    return 0;
}